Technical Field
The present invention relates generally to an optimization framework for data centers, and more particularly, to a system and method for decoupled searching and optimization for multi-tenant data centers.
Description of the Related Art
With the advent of software-defined networking, network optimization has become a significant goal in multi-tenant data centers, leading to various optimization opportunities oriented by diverse objectives (e.g., short latency, low path inflation, minimal configuration cost, etc.). However, considering the number of optimization request in a multi-tenant data center, the search space of routing, and the search algorithmic complexity, such optimization processes costs non-trivial computation resource and time (e.g., because conventional systems require employment of different search algorithms for each tenant).
Along with the rise of cloud computing, multi-tenant data centers grow into the scale of thousands of switches and servers to host a large number (e.g., tens of thousands) of tenant Virtual Machines (VMs). Managing multi-tenancy at such a scale to ensure efficiency, scalability and agility is a challenging problem drawing considerable research and engineering attention. Conventional systems generally place management effort at hypervisors, assuming that tenant networking is mostly decided by network locations of tenant VMs. However, this does not hold true anymore as software-defined networking (SDN) begins to play an increased role in data centers. For example, even if the network locations of VMs are decided, the in-network forwarding could still differ.
From the perspective of optimization, there have been several attempts to achieve the optimal routing oriented by particular pre-defined objective functions. These systems/methods generally work by first proposing some objective functions, expecting that the objective functions may achieve some increased performance, or improved properties (e.g., higher resource efficiency, lower congestion, etc.). These conventional systems/methods iterate over the network to incrementally add links to interconnect the tenant's virtual machines, and the links to add are decided by the proposed objective functions. These systems/methods solutions can be used to optimize a single Virtual Terminal Network (VTN)”. However, in a multi-tenant data center network, the number of VTN optimization requests may be significant, and conventional systems/methods cannot optimize a large number of VTNs while achieving scalability and network efficiency.